Featherweight OCL: A Proposal for a Machine-Checked Formal Semantics for OCL 2.5

نویسندگان

  • Achim D. Brucker
  • Frédéric Tuong
  • Burkhart Wolff
چکیده

The Unified Modeling Language (UML) is one of the few modeling languages that is widely used in industry. While UML is mostly known as diagrammatic modeling language (e. g., visualizing class models), it is complemented by a textual language, called Object Constraint Language (OCL). OCL is a textual annotation language, based on a three-valued logic, that turns UML into a formal language. Unfortunately the semantics of this specification language, captured in the “Annex A” of the OCL standard, leads to different interpretations of corner cases. Many of these corner cases had been subject to formal analysis since more than ten years. The situation complicated when with version 2.3 the OCL was aligned with the latest version of UML: this led to the extension of the three-valued logic by a second exception element, called null. While the first exception element invalid has a strict semantics, null has a non strict semantic interpretation. These semantic difficulties lead to remarkable confusion for implementors of OCL compilers and interpreters. In this paper, we provide a formalization of the core of OCL in HOL. It provides denotational definitions, a logical calculus and operational rules that allow for the execution of OCL expressions by a mixture of term rewriting and code compilation. Our formalization reveals several inconsistencies and contradictions in the current version of the OCL standard. They reflect a challenge to define and implement OCL tools in a uniform manner. Overall, this document is intended to provide the basis for a machine-checked text “Annex A” of the OCL standard targeting at tool implementors.

برای دانلود متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

منابع مشابه

Ocl a Proposal for a Machine _ Checked Formal Semantics for Ocl

The Uni ed Modeling Language (UML) is one of the few modeling languages that is widely used in industry. While UML is mostly known as diagrammatic modeling language (e. g., visualizing class models), it is complemented by a textual language, called Object Constraint Language (OCL). OCL is a textual annotation language, originally based on a three-valued logic, that turns UML into a formal langu...

متن کامل

Towards the Completion of the Formal Semantics of OCL 2.0

The Object Constraint Language (OCL) is part of the Unified Modeling Language (UML) to specify restrictions on values of a given UML model. As part of the UML 2.0 standardization process, a proposal for the new version OCL 2.0 has recently been adopted by the Object Management Group. This proposal provides extensive semantic descriptions by both a metamodelbased as well as a formal mathematical...

متن کامل

Semantics of State-Oriented Expressions in the Object Constraint Language

The textual Object Constraint Language (OCL) is an official part of the Unified Modeling Language (UML). It is primarily used to formulate restrictions for UML class diagrams. Additionally, it is possible to refer to UML Statechart states in OCL expressions to reason about currently activated states. However, neither the current OCL standard nor the proposal for the new OCL 2.0 version integrat...

متن کامل

Semantic Issues of OCL: Past, Present, and Future

We report on the results of a long-term project to formalize the semantics of OCL 2.0 in Higher-order Logic (HOL). The ultimate goal of the project is to provide a formalized, machine-checked semantic basis for a theorem proving environment for OCL (as an example for an objectoriented specification formalism) which is as faithful as possible to the original informal semantics. We report on vari...

متن کامل

Formal Semantics of OCL Messages

The latest OCL 2.0 proposal provides two semantic descriptions, i.e., a metamodelbased semantics that uses UML itself to associate the semantic domain with the language concepts and a formal semantics based on a set-theoretic approach called object model. Unfortunately, these two semantics are currently neither consistent nor complete, as (a) the formal semantics does not consider the newly int...

متن کامل

ذخیره در منابع من


  با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید

برای دانلود متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

عنوان ژورنال:
  • Archive of Formal Proofs

دوره 2014  شماره 

صفحات  -

تاریخ انتشار 2014